Conventionally robotic systems, or robots, of this type may be described as semi-autonomous, i.e. self-propelling but relying for navigational guidance on transmitters, receivers and sensors to establish a coordinate system by which the robot navigates, in effect learning the location of obstacles within its field of movement. More recently it has been proposed to allow a robot to move without establishing a coordinate system, instead relying on the sensing of ad hoc stimuli to enable the robot to navigate around obstacles. For example, it has been proposed to provide a robotic vacuum cleaner operating along these lines. Self-navigational robotic systems of this type are referred to as autonomous robots.
However, robots of these types, often intended for operation in a domestic environment, need a control system which is capable of allowing the robot to move around its environment in safety and therefore additionally need some sort of collision detection system which is capable of providing information on collisions or impending collisions to a control system capable of acting very quickly to prevent the collision or else to minimise the impact, and to perform collision avoidance by re-orienting the robot before further movement. Unfortunately, on-board processing power is inevitably limited by cost constraints in particular and therefore present systems, to avoid be prohibitively expensive, have relatively limiting navigational abilities which result, in use, in the robot tracing a path which involves passing over the same areas of the surface on plural occasions. Whilst this may not be problematic in say a vacuum cleaner, if the robot has the function of treating the surface in other ways, then such redundant movement may result in over-treatment of the surface which is not only wasteful of the product used for the treatment (a serious problem where the payload is restricted), but may also damage the surface or otherwise actually be harmful.